package com.cloudcc.mobile.db;

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

import android.content.Context;

import com.cloudcc.mobile.entity.RecentItem;
import com.lidroid.xutils.DbUtils;
import com.lidroid.xutils.db.sqlite.Selector;
import com.lidroid.xutils.exception.DbException;

public class RecentDB {
	private Context context;
	private DbUtils db;
	public RecentDB(Context context,String dbName){
		this.context=context;
		db=DbUtils.create(context, dbName);
	}
	/**
	 * 保存数据库,如果数据库有相同的人就覆盖修改
	 * @param cls
	 * @throws DbException
	 */
	public  void saveRecentList(RecentItem entity) throws DbException{
		RecentItem item=db.findFirst(Selector.from(RecentItem.class).where("fromUserId","=",entity.getFromUserId()));
		if(item==null){
			db.save(entity);
		}else{
			entity.setId(item.getId());
			db.saveOrUpdate(entity);
		}
	}
	/**
	 * 获取聊天人列表
	 * @return
	 * @throws DbException 
	 */
	public List<RecentItem> getRecentList() throws DbException {
		List<RecentItem> list = new ArrayList<RecentItem>();
		if(db.tableIsExist(RecentItem.class)){
			list=db.findAll(RecentItem.class);
		}
		Collections.sort(list);// 按时间降序
		return list;
	}
}
